package com.shuziren.domain.dto;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
import lombok.Data;
import org.hibernate.validator.constraints.Range;

import java.util.Date;

@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class CandidateAddDto {

    //ID
    @TableId(type = IdType.AUTO)
    private Integer id;

    @NotNull
    @Size(min = 2, max = 10, message = "姓名长度必须在1-20之间")
    private String name;

    /**
     * 候选人性别
     */
    @NotNull
    //性别只能为 1 或者 2
    @Range(min = 1, max = 2, message = "性别只能是 1 或 2")
    private Integer gender;
    /**
     * 电子邮箱
     */
    @Email(regexp = "^(?:^$|^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$)",
            message = "邮箱格式不正确",
            flags = {})
    private String email;
    /**
     * 联系电话
     */
    @Pattern(regexp = "^\\d{11}$", message = "手机号必须为11位数字")
    private String phone;
    /**
     * 应聘职位
     */

    private String position;
    /**
     * 工作经验
     */
    private Integer experience;
    /**
     * 毕业院校
     */
    private String graduateSchool;
    /**
     * 技能标签 逗号分隔
     */
    private String skills;
    /**
     * 上传简历存储路径
     */
    private String resumePath;
    /**
     * 备注信息
     */
    private String notes;
    /**
     * 面试结果
     * @return
     */
    private Integer interviewResult;

    /**
     * 面试状态
     * @return
     */
    private Integer interviewStatus;



    //get set


}
